package com.leyou.item.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.leyou.common.dto.PageDTO;
import com.leyou.item.dto.BrandDTO;
import com.leyou.item.entity.Brand;

import java.util.List;

public interface BrandService extends IService<Brand> {

    /**
     * 根据id查询品牌
     * @param id 品牌的id
     * @return 品牌对象
     */
    BrandDTO queryBrandById(Long id);

    /**
     * 根据品牌id集合查询品牌集合
     * @param ids id集合
     * @return BrandDTO 集合
     */
    List<BrandDTO> queryBrandListByIds(List<Long> ids);

    /**
     * 分页查询
     * @param page 当前页码
     * @param rows 每页大小
     * @param key 查询条件
     * @return 品牌分页结果
     */
    PageDTO<BrandDTO> queryBrandByPage(Integer page, Integer rows, String key);

    /**
     * 根据分类查询品牌
     * @return 品牌集合
     */
    List<BrandDTO> queryBrandByCategoryId(Long id);

    /**
     * 新增品牌  修改品牌
     * @param brandDTO 品牌对象
     * @return 无
     */
    void saveBrand(BrandDTO brandDTO);

    /**
     * 修改品牌
     * @param brandDTO 品牌及分类信息
     * @return 无
     */
    void updateBrand(BrandDTO brandDTO);

    /**
     * 删除品牌
     * @param id 要删除的品牌id
     * @return 无
     */
    void deleteBrandById(Long id);
}
